#if defined (TLU_NETWORK_EXPORTS)
  #define TLU_API __declspec(dllexport)
#else
  #define TLU_API __declspec(dllimport)
#endif

#include "TLU.h"

class TLU_Network
{
public:
	TLU_API TLU_Network( int Layers,int* Width );

	struct SState
	{

	};

	TLU_API SState Feed( char* pData, int Length );
	TLU_API SState Proceed( int CycleTime );
	TLU_API SState Train( char* pData, int Length );

	TLU_API SState GetState( void );
	TLU_API void   ReadOutput( int* pData, int& rLength );

private:
	vector<TLU> TLU_Pool;
	const int  Layers;
	int* Width;

	SState CreateTLU( int Layer );
	SState DistroyTLU( int Layer, int Number );

};